1. Technical Field
This disclosure relates generally to object movement in a data processing system and more specifically to selectable variable speed controlled object movement in the data processing system.
2. Description of the Related Art
Studies have been performed in the area of human interaction with an object, which have been extended to current usage with computers and associated pointing devices. Previous studies were typically related to targeting an object for selection and how quickly a user could attain a target object from among other objects in user interface display.
For example, Fitts's law was developed to predict the time required to move to a target area and is a function of the distance to the target area and the size of the target area. Fitts's law is used to model the process of pointing, wherein pointing includes physically contacting a target object with a hand or finger, or virtually contacting the target object by pointing to an object on a graphic user interface of a computer display using a haptic device.
Researchers used the distance from the starting point to the center of the target object in the calculation of predicting time required to reach and select the object. When determining a center of a target object, a fixed point of an isometry group is a point that is a fixed point for every isometry in the group. For any isometry group in Euclidean space, the set of fixed points is either empty or an affine space. For an object, any unique center and, more generally, any point with unique properties with respect to the object is a fixed point of a respective symmetry group.
In particular, symmetry applies for the centroid of a figure, when one exists. For example, the symmetry of a physical body is dependent not only upon the shape but includes consideration of the density of the object because the center also applies to the center of mass. When the set of fixed points of a symmetry group of an object is a singleton then the object has a specific center of symmetry.
The center of a circle is a point equidistant from points on the edge of the circle. Similarly a center of a sphere is a point equidistant from all points on the surface, and the center of a line segment is the midpoint between the two ends.
Objects having complex shapes may have several symmetries. For example, objects with several symmetries, have a center of symmetry which is the point left unchanged by the symmetric actions. The center of a square, rectangle, rhombus or parallelogram is a point at which diagonals intersect. Similarly the center of an ellipse is where the axes intersect. Typically a two dimensional object is displayed in a user interface for manipulation by a user, but three-dimensional objects can be selected as well.
With reference to current information technology, a pointing device is typically any piece of hardware used to enable a user to input spatial data into a computer. Through manipulation of a mouse, pen or finger around the surface displayed, a user can implement movements and changes to objects depicted on the computer screen. A mouse with an associated arrow is a typical type of pointing device. When a user moves the mouse device on a mouse pad, the associated arrow is moved in a corresponding manner on the display screen. A user selects an object by clicking down on the mouse, and the arrow selects the target object on which the arrow rests or touches. A selection area may be defined for an object, including an area defined as less than, equal to or larger than the size of the target object.
There are many different types of pointing devices including the mouse. The mouse is a generic term referring to many different types of pointing devices. Some pointing devices require movement of device, for example, a mouse or a track ball. An arrow moves on the screen to follow a corresponding movement of the device.
Other devices include a collection of pointing devices that rely on touching a surface to generate a corresponding movement on the computer screen. For example, a touch screen is increasingly important form of input (and output) device.
A graphics tablet relies on the actual table to bring the movement. Each point on the tablet typically represents a point on the display device enabling a user to touch a specific point on the tablet causing the associated arrow to move to the corresponding point on the computer display. A touch pad detects movement of a finger to enable an arrow to move accordingly. A touchpad may be part of the computer (for example, embedded in the keyboard area of a laptop) or an auxiliary device associated with the computer as a replacement for a mouse.
Movement of objects using the pointing devices, referred to as a drag and drop operation, has typically been controlled by software settings associated with the device. However there is no single all encompassing sweet spot for setting the sensitivity or speed of performing drag and drop operations and scrolling. Computer users typically have only a single fixed sensitivity value applicable for use with a mouse or a touch screen.
For example, a rubber band type of graphical user interface control typically controls dragging speed using images on objects to be moved by a rubber band, such that the further a user pulls the rubber band the higher the speed of dragging. When the user wants to drag an object quickly, there is typically a lag of the rubber band extending to reach the top speed. Additionally when the user want to drag an object quickly from one side of the screen to the other, the user is typically not able to drag quickly at the start of the operation and when the user tries to drop the object because the user is typically not able to extend the rubber band fully around the edges of the screen or the rubber band will disappear.